food$Image <- factor(food$Image, labels=c('very bad','bad','normal','good','very good')) food$Expensive <- factor(food$Expensive, labels=c('not expensive','a little expensive','average','quite expensive','very expensive')) food$Good.value.for.money <- factor(food$Good.value.for.money, labels=c('very bad','bad','average','good','very good')) food$Kind.of.consumer <- factor(food$Kind.of.consumer, labels=c('very bad','bad','normal','good','very good')) colnames(food)[5]="Not.balanced.meals" food$Not.balanced.meals <- factor(food$Not.balanced.meals, labels=c('not balanced','badly balanced','average','quite well balanced','well balanced')) colnames(food)[6]="Products.appreciation" food$Products.appreciation <- factor(food$Products.appreciation, labels=c('not at all','not much','average','quite a lot','enormously')) colnames(food)[7]="Not.enough.to.eat" food$Not.enough.to.eat <- factor(food$Not.enough.to.eat, labels=c('disagree','slightly disagree','neither agree nor disagree','slightly agree','agree')) colnames(food)[8]="Poor.nutritionnal.quality" food$Poor.nutritionnal.quality <- factor(food$Poor.nutritionnal.quality, labels=c('disagree','slightly disagree','neither agree nor disagree','slightly agree','agree')) food$Pleasure <- factor(food$Pleasure, labels=c('no pleasure','not much pleasure','average','quite a lot pleasure','great pleasure')) colnames(food)[10]="Fast.food.pollute" food$Fast.food.pollute <- factor(food$Fast.food.pollute, labels=c('disagree','slightly disagree','neither agree nor disagree','slightly agree','agree')) food$Convivial <- factor(food$Convivial, labels=c('not convivial','not much convivial','average','quite convivial','very convivial')) food$Practical <- factor(food$Practical, labels=c('not much practical','average','quite practical','very practical')) colnames(food)[13]="Pleasant.side" food$Pleasant.side <- factor(food$Pleasant.side, labels=c('nothing pleasant','few pleasant things','average','some pleasant things','a lot of pleasant things')) food$Not.varied.enough <- factor(food$Not.varied.enough, labels=c('disagree','slightly disagree','neither agree nor disagree','slightly agree','agree')) colnames(food)[15]="Adapted.to.everybody" food$Adapted.to.everybody <- factor(food$Adapted.to.everybody, labels=c('disagree','slightly disagree','neither agree nor disagree','slightly agree','agree')) colnames(food)[16]="Would.be.missed.if.gone" food$Would.be.missed.if.gone <- factor(food$Would.be.missed.if.gone, labels=c('not at all','not much','average','quite a lot','enormously')) colnames(food)[17]="Feel.bad.about.oneself" food$Feel.bad.about.oneself <- factor(food$Feel.bad.about.oneself, labels=c('not at all','a little','average','not much')) colnames(food)[18]="Diet.after.fastfood" food$Diet.after.fastfood <- factor(food$Diet.after.fastfood, labels=c('never','rarely','sometimes','often','always')) colnames(food)[19]="Products.not.satisfying" food$Products.not.satisfying <- factor(food$Products.not.satisfying, labels=c('disagree','slightly disagree','neither agree nor disagree','slightly agree','agree')) food$Cheaper.meal <- factor(food$Cheaper.meal, labels=c('disagree','slightly disagree','neither agree nor disagree','slightly agree','agree')) colnames(food)[21]="Global.appreciation" colnames(food)[22:26]=c("Fastfood.in.the.morning","Fastfood.at.midday", "Fastfood.in.the.afternoon", "Fastfood.in.the.evening", "Fastfood.at.night") colnames(food)[27]="When.in.the.week" colnames(food)[32]="Type.of.consumption" colnames(food)[33:43]=c("Consume.hamburger", "Consume.nuggets", "Consume.salads", "Consume.fizzy.drinks", "Consume.water", "Consume.fruit.juice", "Consume.light.fizzy.drinks", "Consume.chips.potatoes", "Consume.fruits", "Consume.ice.cream", "Consume.dessert") colnames(food)[44]="Budget" colnames(food)[45]="Prefered.type" colnames(food)[47]="Regular.sport.practice" summary(food) library(FactoMineR) library(dynGraph) library(EnQuireR) #MCA food.MCA<-food[, c("Image", "Expensive", "Good.value.for.money", "Kind.of.consumer", "Not.balanced.meals", "Products.appreciation", "Not.enough.to.eat", "Poor.nutritionnal.quality", "Pleasure", "Fast.food.pollute", "Convivial", "Practical", "Pleasant.side", "Not.varied.enough", "Adapted.to.everybody", "Would.be.missed.if.gone", "Feel.bad.about.oneself", "Diet.after.fastfood", "Products.not.satisfying", "Cheaper.meal", "Sex", "Regular.sport.practice", "Living.place", "Global.appreciation", "Fastfood.in.the.morning", "Fastfood.at.midday", "Fastfood.in.the.afternoon", "Fastfood.in.the.evening", "Fastfood.at.night", "When.in.the.week", "With.friends", "Alone", "Couple", "With.family", "Type.of.consumption", "Consume.hamburger", "Consume.nuggets", "Consume.salads", "Consume.fizzy.drinks", "Consume.water", "Consume.fruit.juice", "Consume.light.fizzy.drinks", "Consume.chips.potatoes", "Consume.fruits", "Consume.ice.cream", "Consume.dessert", "Budget", "Prefered.type")] res<-MCA(food.MCA, ncp=5, quali.sup=21: 48, graph = FALSE) plot.MCA(res, axes=c(1, 2), col.ind="black", col.ind.sup="blue", col.var="darkred", col.quali.sup="darkgreen", label=c("ind", "ind.sup", "quali.sup", "var"), invisible=c("")) plot.MCA(res, axes=c(1, 2), col.ind="black", col.ind.sup="blue", col.var="darkred", col.quali.sup="darkgreen", label=c("ind", "ind.sup", "quali.sup", "var"), invisible=c("ind","var")) plot.MCA(res, axes=c(1, 2), choix="var", col.var="darkred", col.quali.sup="darkgreen", label=c("var", "quali.sup"), invisible=c("")) #Ventilation 5%, we keep 38 dimensions (inertia: 80%) res<-MCA(food.MCA, ncp=38, quali.sup=21:48, graph = TRUE, level.ventil=0.05) #To see individuals only (write "ind" in "invisible" to see variables only) plot.MCA(res, invisible=c("var","quali.sup")) #Contributions to axes, representation,..... dimdesc(res) #Cluster analysis res.hcpc<-HCPC(res) #contingency table between two variables (example with "image" and "final mark") table(food[ ,c(1,21)]) library(abind, pos=4) .Table <- xtabs(~Image+Final.mark, data=food) .Table rowPercents(.Table) # Row Percentages .Test <- chisq.test(.Table, correct=FALSE) .Test remove(.Test) remove(.Table) #Useful informations on variables (contributions, coordinates,...) res$var #Useful informations on individuals res$ind #Useful informations on supplementary variables res$quali.sup #dynGraph dynGraph(res) #EnQuireR res<-ENMCA(food.MCA, quali.sup=21:48, level.ventil=0.05, report=TRUE) graphics.off()